package com.atguigu.product.service;

import com.atguigu.param.ProductHotParam;
import com.atguigu.param.ProductIdsParam;
import com.atguigu.utils.R;

public interface ProductService {

    /**
     * 单类别名称 查询热门商品 至多7条数据
     *   1. 根据类别名称 调用 feign客户端访问类别服务获取类别的数据
     *   2. 成功 继续根据类别id查询商品数据  [热门 销售量倒序 查询7]
     *   3. 结果封装即可
     * @param categoryName 类别名称
     * @return r
     */
    R promo(String categoryName);


    /**
     * 多类别热门商品查询 根据类别名称集合! 至多查询7条!
     *   1. 调用类别服务
     *   2. 类别集合id查询商品
     *   3. 结果集封装即可
     * @param productHotParam
     * @return
     */

    R hots(ProductHotParam productHotParam);

    /**
     * 商品 类别查询集合 列表页
     * @return
     */

    R clist();


    /**
     * 通用性业务查询
     * 没有传入类别id 查询全部！
     * @param productIdsParam
     * @return
     */
    R byCategory(ProductIdsParam productIdsParam);
}
